# -*- coding: utf-8 -*-

from django.http import HttpResponse

from HelloWordTestModel.models import Stu


# 数据库操作
def testdb(request):
    stu = Stu(name='zhw',age=18,sex='m',classid=1)
    stu.save()
    return HttpResponse("<p>数据添加成功！</p>")



#查询
def findStuList(request):
    # 初始化
    response = ""
    result = ""
    # 通过objects这个模型管理器的all()获得所有数据行，相当于SQL中的SELECT * FROM
    list = Stu.objects.all()
    # filter相当于SQL中的WHERE，可设置条件过滤结果
    response2 = Stu.objects.filter(id=1)
    # 获取单个对象
    response3 = Stu.objects.get(id=1)
    # 限制返回的数据 相当于 SQL 中的 OFFSET 0 LIMIT 2;
    Stu.objects.order_by('name')[0:2]
    # 数据排序
    Stu.objects.order_by("id")
    # 上面的方法可以连锁使用
    Stu.objects.filter(name="zhw").order_by("id")
    # 输出所有数据
    for var in list:
        result += var.name + " "
    response = result
    return HttpResponse("<p>" + response + "</p>")


# 数据库操作
def updateStu(request):
    # 修改其中一个id=1的name字段，再save，相当于SQL中的UPDATE
    stu = Stu.objects.get(id=1)
    stu.name = 'Google'
    stu.save()
    # 另外一种方式
    # Stu.objects.filter(id=1).update(name='Google')
    # 修改所有的列
    # Stu.objects.all().update(name='Google')
    return HttpResponse("<p>修改成功</p>")


# 数据库操作
def delStuData(request):
    # 删除id=1的数据
    stu = Stu.objects.get(id=1)
    stu.delete()
    # 另外一种方式
    # Stu.objects.filter(id=1).delete()
    # 删除所有数据
    # Stu.objects.all().delete()
    return HttpResponse("<p>删除成功</p>")